package src.Aula08.Ex1;

public class Motociclo extends Veiculo {

    public enum TipoMotociclo {
        Estrada, Desportivo
    }
    
    private TipoMotociclo tipoMotociclo;

    public Motociclo(String matricula, String marca, String modelo, int cilindrada, TipoMotociclo tipoMotociclo) {
        super(matricula,marca, modelo, cilindrada);
        this.tipoMotociclo = tipoMotociclo;
    }

    @Override
    public String toString(){
          return String.format("[Motociclo] - Matricula: %s; Marca: %s; Modelo: %s; Cilindrada: %d; Tipo motociclo: %s",getMatricula(),getMarca(),getModelo(),getCilindrada(), tipoMotociclo.toString());
    }
    
    @Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (!super.equals(obj))
            return false;
        if (getClass() != obj.getClass())
            return false;
        Motociclo other = (Motociclo) obj;
        if (tipoMotociclo != other.tipoMotociclo)
            return false;
        return true;
    }


    public TipoMotociclo getTipoMotociclo() {return tipoMotociclo;}

    public void setTipoMotociclo(TipoMotociclo tipoMotociclo) {
        this.tipoMotociclo = tipoMotociclo;
    }

    
    
    
}
